package net.sudot.commons.pagination;

import java.io.Serializable;
import java.util.List;

/**
 * 分页请求抽象接口
 *
 * @author 唐家林
 * @time 2016年3月30日
 */
public interface Pageable extends Serializable {

    /**
     * 获取查询记录条数
     *
     * @return 记录条数
     */
    public int getRows();

    /**
     * 设置查询记录条数
     *
     * @param rows 查询条数
     * @return Pageable
     */
    public Pageable setRows(int rows);

    /**
     * 获取当前页码
     *
     * @return 页码
     */
    public int getPage();

    /**
     * 设置当前页码
     *
     * @param page 页码
     * @return Pageable
     */
    public Pageable setPage(int page);

    /**
     * 获取查询参数
     *
     * @return
     */
    public List<QueryCondition> getQueryConditions();

    /**
     * 设置查询参数
     *
     * @param queryConditions
     * @return
     */
    public Pageable setQueryConditions(List<QueryCondition> queryConditions);
}
